package com.ccit.springbootlaw.service;

import com.ccit.springbootlaw.pojo.Comment;

import java.sql.Timestamp;
import java.util.List;

public interface CommentService {
    // 根据ID查询评论
    Comment findById(int id);

    // 根据用户ID查询评论
    List<Comment> findByUserId(int userId);

    // 根据文章ID查询评论
    List<Comment> findByArticleId(int articleId);

    // 根据父评论ID查询评论
    List<Comment> findByParentId(Integer parentId);

    // 根据创建时间范围查询评论
    List<Comment> findByCreatedAtRange(Timestamp startTime, Timestamp endTime);

    // 根据传入的 Comment 实体类内容进行多条件查找
    List<Comment> findByConditions(Comment conditions);

    // 根据文章 ID 查找父评论为空的评论
    List<Comment> findRootCommentsByArticleId(int articleId);

    // 插入新的评论
    int insertComment(Comment comment);

    // 查询所有评论
    List<Comment> findAll();

    // 更新评论
    int updateComment(Comment comment);

    // 删除评论
    int deleteCommentById(int id);
}